package com.znf4.dao;

import java.util.List;

/**
 * 
 * @author Agui.Server
 *
 * @param <T>
 */
public interface BaseMapper<T> {


    /**
     * 函数功能说明 ： 插入 数据
     */
    void insert(T t);

    /**
     * 函数功能说明 ： 删除一个
     */
    void deleteOne(T t);
    
    /**
     * 函数功能说明 ：删除多个
     */
    void deleteAll(List<T> t) ;
    
    /**
     * 函数功能说明 ：修改信息    
     */
    void update(T  t);
    
    /**
     * 函数功能说明 ： 删除多个
     */
    void updateAll(List<T> t) ;

    /**
     * 函数功能说明 ：条件查询查一个   
     */
    T  queryOne(T t);
    
    /**
     * 函数功能说明 ： 根据column查询记录数.
     * 
     * @参数：@param paramMap
     * @参数：@return
     * @return：Long
     * @throws
     */
    Long getCountByColumn(T t);
    
    

    /**
     * 函数功能说明 ： 条件查询查多个 
     */
    List<T> queryAll(T  t);
    
    /**
     * 函数功能说明 ：根据条件查询数据记录数
     * @param map
     *            查询条件
     * @return 记录数
     */
    int findAllByFilterCount(T t);

}